MRBACKUP PROFESSIONAL Welcome to MRBackup Professional! Introduction ------------ MRBackup is a hard disk backup program for the Commodore Amiga family of computers. It provides a wide range of services to support Amiga file management and backup/restore of files to/from hard disk. Files can be backed up to: · Floppy disk, in AmigaDOS format · Floppy disk, in a special "fast" format · Any sequential file or device (local or networked) in "fast" format · SCSI streaming tape A saveset catalog file is created for each saveset, allowing quick retrieval of individual files when necessary. Should the catalog file become damaged or lost, MRBackup can recreate it by scanning the saveset. MRBackup is designed to behave well in your Amiga's multi-tasking environment. It does not "take over the machine" and will allow you to use your Amiga for other chores while backups are being performed. MRBackup is controlled by a flexible set of user-configurable parameters and offers a wide range of backup and restore options. Its Intuition-based user interface is designed for a pleasing appearance and ease of operation. MRBackup uses the Amiga's speech capabilities to provide an effective means for presenting prompts, error conditions and requests for floppy disk insertions, etc. MRBackup provides optional data compression which will reduce the number of diskettes (or other media) required for a backup. Requirements · any Amiga system with at least 1 MB memory and AmigaDOS 2.04 or higher · at least 1 floppy disk drive or SCSI streaming tape drive (Archive Viper, Wangtek 50XX, TEAC 36XX, Sony DAT, etc. ) MRBackup will work with any hard drive supported by the AmigaDOS operating system. Installation Instructions ------------------------- As always, prior to installing any new software, make a working copy of the original diskette. Use the working copy, not the original diskette, for the installation process. The new installation procedure for MRBackup Professional will copy all files to a disk partition or a directory within a partition (recommended). MRBackup's support files have been grouped according to category into several subdirectories which will be created within the partition or directory which you specify for installation. You may wish to make backup copies of any ".init" or filter files which you created for use with previous versions of MRBackup Professional. They are still upward compatible with this release of the software. Insert the MRBackup Professional working copy disk into an available floppy drive and double-click on its disk icon. Find the icon labeled "Install-MRBackup" and double-click it. This will run a script which will install MRBackup Professional. IMPORTANT NOTE: this version of the software requires the definition of an AmigaDOS logical name, MRBackup:. This name is equated to the name of the partition or directory where MRBackup Professional is installed and must be created/assigned prior to installation. Example: MAKEDIR DH0:MRBackup ASSIGN MRBackup: DH0:MRBackup It is recommended that you also place the ASSIGN statement in your startup-sequence (s:StartupII, s:user-startup, etc.) to assure that the MRBackup: logical name will always be available whenver you reboot your system. The MRBackup: Directory ----------------------- This section briefly describes the contents of the MRBackup directory. None of the subdirectories in this directory are an absolute requirement but it is strongly suggested that you adopt this configuration. Files in the MRBackup: Directory The following files will be found at the top level of the MRBackup: directory. Compressor This program file is MRBackup Professional's data compression "engine". It is automatically started by MRBackup Professional when data compression or decompression is requested. FormatDisk This is a shell script file, invoked by MRBackup Professional when a backup disk is to be formatted (AmigaDOS backup mode). DO NOT use this script for general-purpose formatting of disks as it is not intended for that purpose. MRBackup This is the MRBackup Professional program file. Subdirectories in the MRBackup: Directory ----------------------------------------- The MRBackup: directory contains several subdirectories. These subdirectories provide a means for grouping files with a similar purpose. ARexx_Scripts This directory contains a number of example ARexx scripts for use with MRBackup Professional. Use these as a guide for writing your own ARexx scripts. Catalogs Use this directory as a repository for catalog files created by the backup process. Docs This directory contains several small document files providing additional information and details not available in the user manual. The file named Changes in this directory describes last-minute changes that could not be included in the user manual. Lists and Logs Use this directory to store listing and log files created by MRBackup Professional. Prefs This directory contains various MRBackup Professional "preferences" files including the MRBackup.init file and the filter file templates. You may also use this directory to save your custom preferences files. Work This is the default MRBackup working directory, used to store temporary files created by MRBackup during backup and restore operations. Operation This manual assumes that you already know the basic operating principles of your Amiga and that you are familiar with its user interface. If this manual refers to an Amiga-specific procedure or feature with which you are not familiar, please refer to your Amiga owner's manual. MRBackup may be started from the WorkBench by double-clicking its program icon or from the CLI by typing the appropriate command line. The startup procedures for each environment are presented below. Working Directory MRBackup requires an area for storing certain temporary information during the backup process. This area is called the "working directory". The working directory defaults to MRBackup:Work, but you may override this setting. The next two sections describe how this is done. MRBackup may be run from either the Command Line Interface (CLI) or the WorkBench. CLI Operation To start MRBackup from the CLI (Command Line Interface, also called the "Shell"), you can just type MRBackup at the command prompt. MRBackup supports several command-line options which override its default behavior. These are: -d This option instructs MRBackup to search , rather than MRBackup:Prefs, when looking for preferences files. -i This option instructs MRBackup to initialize from , rather than MRBackup:Prefs/MRBackup.init or MRBackup.init in the local directory. -p This option is essentially the same as the -d option. -w This option instructs MRBackup to use , rather than MRBackup:Work, as the working directory. WorkBench Operation To start MRBackup from the WorkBench, simply double-click its program icon or an MRBackup project icon. MRBackup supports several icon Tool Types entries which can override its default behavior. To add or modify the Tool Types entries, you must use the Info command in the WorkBench menu. Refer to your Amiga owner's manual if you are unfamiliar with this procedure. MRBackup recognizes the following Tool Types entries: DIR= PREFS= These Tool Types are identical and instruct MRBackup to search when attempting to locate the preferences file. WINDOW= This Tool Type entry instructs MRBackup to open its "background" console window according to which should be a valid CON: window specification (e.g. CON:0/0/640/200/MRBackup ). WORK= This Tool Type instructs MRBackup to use , rather than MRBackup:Work, as the default working directory. If you really want to get clever, you can make copies of MRBackup's project icon file (MRBackupDefault.info) and tune the Tool Types entries for each hard disk partition. How is this done? Using the CLI COPY command, make a copy of MRBackupDefaults.info for each partition. Example: (CD to the directory where MRBackup resides) COPY MRBackupDefaults.info MRBackup-DH0.info COPY MRBackupDefaults.info MRBackup-DH1.info (etc.) For each icon, make the appropriate changes to the Tool Types entries. Technical Support If you have a problem with MRBackup, think you've discovered an "undocumented feature" or just need help, please call! I'll do my best to help you get the most out of MRBackup Professional. If you don't have telecommunications software or a modem, you can write to MRsoftware 348 Indian Avenue Portsmouth, RI 02871 (401) 846-7639 MRsoftware maintains an email account on BIX (markr) and a vendor support forum, amiga.vendors/mrsoftware Users on either Usenet or Internet can send e-mail to mrr@mrsoft.network23.com MRsoftware has a customer support BBS where product updates and user support are provided. The BBS phone number is (401) 841-5844. The BBS is supported by a SupraFAXModem and will answer at 1200, 2400 or 9600 baud (8N1). The BBS software is AXsh which is a bit different than the typical BBS system (it's user interface is very much like the Unix operating system). Presently, two Login prompts must be satisfied to gain access to the BBS (this will probably change in the near future). At the first Login prompt, always enter `bbs' (without the quotes). At the second Login prompt, do one of the following: First-time callers must enter `new' to register as a new BBS user, then follow instructions as they appear. On subsequent calls, enter your BBS user name and password, as you chose them during your initial registration. Do not forget your password! If you lose it, the only way you will be able to regain access to the BBS is to request a new one (it's encrypted, so even I don't know what it is!). A special `guest' account (password = guest) is also provided on the BBS. This account can be used to test-drive the BBS or to make special requests such as assigning a new password :-). The latest shareware distribution archive of MRBackup Professional will always be available on the BBS in the public download directory. Other MRsoftware shareware and PD offerings are also available here. For registered MRBackup Professional users, the latest registered version of MRBackup Professional is also available. Limited voice support is available by calling (401) 846-7639 on weekdays from 6:00 p.m. to 9:00 p.m. (EST). PLEASE DO NOT CALL AFTER 9:00 p.m.!!! Voice support is also available on weekends from 9:00 a.m. to 6:00 p.m. if you're lucky enough to catch me. In addition to MRBackup Professional development, I also have a `life' which keeps me on the run. MRBackup Tips ------------- This section contains bits of information which will help you achieve maximum satisfaction and performance from MRBackup Professional. If you have a useful tip, please submit it and we'll incorporate it here. Improving Throughput One important factor in the performance of the AmigaDOS filesystems is the number of disk buffers allocated to each drive. For hard disk drives, this value can be set when you partition the drive. The value can also be modified for any drive with the AmigaDOS `AddBuffers' command. There is no set value that works well for all drives, but I recommend that you use a value of at least 30 buffers. Bear in mind that using too many buffers can waste memory and perhaps even slow down filesystem performance. The number of buffers assigned to a floppy disk drive has no effect on Fast Disk performance but will have an impact on AmigaDOS backups to floppy disks. The `Buffer' parameter in the General Parameters (main) window now has a minimal effect on overall performance since most buffers used by MRBackup are actually tuned to the best match between input and output devices. If you are backing up to SCSI tape, the buffer size that you specify in the mountlist entry is very important. Most tape hardware has internal buffer memory. Data is held in this buffer until it fills, then is written to tape. If you specify a mountlist entry buffer size exactly matched to the capacity of the tape drive's internal buffer, you will achieve maximum parallel execution of the tape handler and MRBackup and thus maximum throughput. This can also be a case where more isn't necessarily better. AmigaDOS Formatting When performing AmigaDOS backups to floppy disk, you can control the formatting of individual diskettes via the `Formatting' and `Filesystem' settings in the General Parameters window. When `Formatting' is set to `Normal', MRBackup executes a script named MRBackup:FormatDisk. This script is designed to run automatically without user assistance or intervention. However, due to the design of the AmigaDOS Format program, if a disk error is encountered, the script may not be able to complete. If you experience this problem, you may want to edit the FormatDisk script to make it more interactive. Find the line that reads: SYS:System/Format nil: MRBackup:Compressor If you wish to stop the compressor, just issue the following command from the CLI: MRBackup:Compressor quit The following compressor executables are provided: · Compressor Compressor with overlays, will run on any Amiga · Compressor.No_Overlays Compressor without overlays, will run on any Amiga · Compressor_020 Compressor with overlays, optimized for accelerated Amigas · Compressor_020.No_Overlays Compressor without overlays, optimized for accelerated Amigas The overlayed configuration requires very little memory when it is idle since the compression code segment is removed from memory. This is normally the preferred version to use. However, this also means that the Compressor program file must be readily accessible so that the overlay segments can be accessed quickly. If you are in a situation where you must run MRBackup from floppy disk, you may prefer to use the non-overlayed version. To do this, simply rename the overlayed version to "Compressor.Overlays" and rename the non-overlayed version to "Compressor". DO NOT attempt to run the 020 versions of the Compressor on a stock 68000 machine. These versions contain instruction codes not supported by the 68000 processor. Attempting to run them will crash your system. Compression guide ----------------- Data Compression MRBackup provides you with the ability to compress your files as they are written to a save-set and to decompress them when they are restored. The primary motivation for doing this is to save space on the backup media and thus reduce the amount of media required to hold the saveset. There is a performance penalty exacted for this, however. You must determine if the savings in space are worth the extra time required to perform the backup or restore of compressed files. The use of data compression also places extra demands on system memory which may be a consideration if you are running other programs (multitasking) while MRBackup is running. Data Compression Method MRBackup employs Lempel-Ziv compression. While this method does not yield the highest compression ratios, it is one of the faster software compression algorithms available. Its ability to be "tuned" through the use of user-specified code size limits allows you to make certain performance trade-offs. Larger code sizes will make greater temporary demands on system memory but will result in higher compression ratios. When a file is compressed, special codes are written at the beginning of the compressed file to indicate that it is compressed and to record the size of the codes used for compression. Thus, you need not remember what code size was used to compress a particular file when you later decompress it. The Compressor -------------- MRBackup performs data compression with a separate program named Compressor. Whenever you start a backup with compression enabled or a restore with decompression enabled or if you compress/decompress individual files using the Utilities, MRBackup will check to see if the Compressor is running. If not, you will be asked for permission to start it. MRBackup will then enter into a "conversation" with the Compressor, requesting data to be processed and retrieving the results. There are several advantages to this approach. Some of them are too technical to be discussed here. Of most importance to the user is that as a result, the MRBackup program is smaller. If data compression is not being used, less memory is being used by MRBackup. The Compressor program is designed to employ "overlays". When it is idle, it uses almost no Amiga resources since it releases the data compression code and buffer memory and waits for the next request to do something. Starting and Stopping the Compressor Manually You may elect to start and stop the Compressor "manually" if you so desire. To start the Compressor, simply enter RUN MRBackup:Compressor nil: from the Shell command prompt or double-click the Compressor icon. To stop the Compressor, enter MRBackup:Compressor quit from the Shell command prompt. Compression Estimating Compression estimating allows MRBackup to better determine if a file will fit on the current backup diskette when performing an AmigaDOS backup with compression enabled (it is irrelevant to Fast Disk and SCSI Tape backups). MRBackup does not know in advance what a file's size will be after it is compressed. Therefore, when determining whether a file will fit on the current backup diskette, the file's full size is used. This can result in a significant amount of wasted space on each diskette. If you set the compression estimate to a non-zero value, MRBackup will apply this estimate when determining space available. A reasonable value to start with is 35 (%). This means that you expect most files to be 65% of their original size (100%-35%) when compressed. Please note that this may lead to occaisional "disk full" errors, depending on how aggressive your estimate is. In this case, MRBackup will delete the partially copied file and force a new diskette. This is a feature you'll have to develop a "feel" for. Of course, you can always play "safe" and leave this value at zero. The MRBackup File Selector ------------------------- The file selector is presented to you during backup and restore operations to enable you to "fine tune" the list of selected files. Before we discuss its operation, let's take a quick look at the graphical objects that make up the file selector. In the discussion that follows the term entry refers to both files and directories. The files available for selection/deselection are presented in the large box at the left of the file selector. Just to the right of this box, you will see a scroll bar. When there are more files at a given level than can be viewed in the selection box, the drag bar (rectangle within the scroll bar) will be sized in proportion to the number of visible vs. total entries. You may click and drag this bar to reveal other entries at the current level. You may also scroll the list one item at a time by clicking on either of the small buttons at the bottom which have arrow indicators on them. Each time you click on an entry in the list, it will toggle between selected and deselected. An entry in the selected state is highlighted by a dark background. Directory entries and file entries are represented by different colors. To view the contents of directories (and their subdirectories), position the mouse pointer over a directory entry and double-click (two clicks, in rapid succession) on the entry. The display box will be redrawn with the contents of that directory and the Current Level indicator will be incremented. To return to the previous level, simply click on the Up button. Current Level This gadget reports the nesting level of the directory you are currently viewing. The top level is zero. Up When you click the Up gadget, the next higher directory level is displayed and the Current Level gadget is updated accordingly. Include Pattern This is a string gadget which works in conjunction with any of the Select buttons (later). The Include Pattern is a filename matching pattern (as used in the MRBackup filters) which is applied to each filename when one of the Select buttons is clicked. Only those names matching the pattern will be selected. If the Include Pattern is blank, no include matching is performed. Exclude Pattern This is a string gadget which works in conjunction with any of the Select buttons (later). The Exclude Pattern is very similar to the Include Pattern, except that filenames matching the pattern will be excluded from selection when a Select button is clicked. If both Include and Exclude patterns are specified, the Include pattern is applied first. Select All When the Select All button is clicked, all files in the selector file list are selected. Select all, this level and below This button causes all entries at the current level and lower (higher level numbers) to be selected. Select all, this level only This button causes all entries at the current level to be selected. Deselect all This button has slightly different behavior, depending upon the Current Level setting. When the Current Level is zero (top level), all entries are deselected. When the Current Level is non-zero, all file and directory entries except the parent directories for the current level are deselected. Deselect all, this level and below This button causes all entries at and below the Current Level to be deselected. Deselect all, this level only This button causes all entries at the Current Level to be deselected. Entries This gadget reports the total number of entries (files and directories) contained in the file selector list. No. Selected This gadget reports the total number of entries currently selected. Disk Est. For backup operations, this gadget provides a rough estimate of the number of disks required to hold the files currently selected. If file compression is enabled, the Compression Estimate value (entered by you) is factored into the disk estimate. The disk estimate value is meaningless for restore operations. OK Click this button when your file selection is complete and you wish to proceed with the current operation (backup or restore). CANCEL Click this button when you wish to terminate the current operation (backup or restore). Current Directory (unlabeled) The long gadget at the bottom of the file selector window displays the full name of the current directory. It is empty when the Current Level is zero. General Parameters Window The General Parameters Window contains parameters common to most MRBackup operations. In addition to the usual string gadgets and command buttons, you will also notice several square buttons (raised gadgets), labeled with a question mark (?). These are file requester gadgets. Each of these is associated with another gadget which specifies a device, directory or file name. When you click on a file requester gadget, a file requester window is superimposed on MRBackup's main window . With it, you can navigate your file system and easily select the appropriate name for the corresponding gadget. The following paragraphs describe all of the gadgets in the General Parameters window. Please take the time to read this information carefully, as several important key concepts are presented here. Preferences Gadget This gadget names the file where MRBackup's operating parameters (user preferences) are stored. If MRBackup is started without an explicit "initial file" specification (-i option from CLI, INIT= tool types from WorkBench), the current directory is searched for "MRBackup.init". If the file is not found there, the working directory (default = MRBackup:Prefs) is searched. You may change MRBackup's parameters (including this one), then use Save Preferences to record your new settings. You may also reinitialize MRBackup with another preferences file by changing this specification. Home Path Gadget The Home Path describes the device or directory where your files normally reside. During backup operations, files are copied from the location specified by the Home Path. During restore operations, files are copied to this location. You may type the Home Path value directly into the gadget box or you may use the file requester to assist you. The Home Path must specify a device, volume or directory name (not a file name). Backup Path Gadget The Backup Path describes the destination (TO path) for files during a backup or the source (FROM path) for files during a restore. Normally, the backup path is the name of one of your floppy disk drives. If one or more of the floppy disk icon gadgets is selected, the Backup Path is ignored. See the section entitled @{" Backup Operations " ALink "MRBackup:Help/MRB_Backups.guide/main" } for more details on the Backup Path. Floppy Disk Icons MRBackup supports selection of up to four floppy disk devices (DF0: through DF3:) for backup or restore. This allows you to preload your disk drives, reducing the frequency with which you must insert diskettes. MRBackup will cycle through the selected drives and prompt you for more diskettes only when all have been used or an error is detected. When you click on one of these icons, a check-mark will appear, indicating that the drive is selected. Whenever floppy drives are selected in this fashion, the Backup Path specification is ignored. Voice Gadget This is an ON/OFF button which enables or disables MRBackup's speech capability. Media Type Gadget This gadget selects the type of backup or restore to be performed and cycles through the following range of values: · AmigaDOS · Fast Disk · SCSI Tape Note: the media types are described in detail in the section entitled Buffer Gadget When MRBackup performs input or output from/to a file, a certain amount of memory is set aside as a buffer (work area). This is done to minimize the number of physical disk accesses necessary to move data from/to a file. The bigger the buffer, the fewer disk accesses that are required to move a file. The default buffer size is 32K bytes (K = 1024, thus 32K = 32768 bytes). If your system has expanded memory, you can take advantage of it by increasing your buffer size. The maximum buffer size allowed is 512K. There is no practical benefit in specifying a buffer which is more than two times larger than the largest file on your system. This will simply waste memory which might be needed by other applications (remember - we can multitask while doing a backup or restore!). Listing Path Gadget MRBackup normally generates a listing during backups. This gadget specifies the file or device to receive the listing. You may type the listing path directly into the gadget or you may use its requester gadget to assist you. To send the listing directly to the printer, you would select "PRT:". To save the listing to a file on the hard disk, simply select the appropriate directory and file name. Log File Gadget MRBackup will optionally generate a log of all of its activities if the Log File gadget contains a valid pathname. This log will contain time-stamped progress reports and error messages. To disable the log, simply clear this gadget. When errors are detected during a backup or restore, it is good practice to check the contents of the log for the cause and severity of these errors. Options Button This command button activates the Options window and is provided as a convenient alternative to the equivalent menu command. Filters Button This command button activates the Filters window and is provided as a convenient alternative to the equivalent menu command. Backup Button This command button initiates a backup operation and is equivalent to the Backup menu command. Restore Button This command button initiates a restore operation and is equivalent to the Restore menu command. Utilities Button This command button activates MRBackup's file utilities. It is equivalent to the Utilities menu command. MRBackup Restores ----------------- The Restore Process The file restoration process is the inverse of a backup. You would most likely do a full restore when rebuilding a disk partition. A partial restore might be done to recover files which were deleted accidentally. Restore Operations ------------------ Relevant Settings The following MRBackup settings come into play when performing a restore operation: · Home Path - the target ("to" location) for the restore. · Backup Path - the source ("from" location) for the restore. · Disk Selection Icons - optional selection of backup path (overrides Backup Path). · Backup Mode - indicates the type of save-set we are restoring from. · Decompression - sets the upper code size limit for file decompression. Files compressed with code sizes larger than this limit will be restored in their compressed state. · Buffer, specifies the amount of memory to be used for file I/O buffering (same as backup). · Decompression Filter - compressed files whose names match one or more of the patterns in this file will not be decompressed during a restore. · Log File - records errors and progress messages during the restore. · Error Handling - establishes the type of error handling employed during the restore. · Voice On/Off - enables/disables MRBackup's speech capability. Points to Remember ------------------ There are some interesting (and important) items to be aware of when performing a file restore operation. During a backup, MRBackup preserves the complete directory hierarchy for the files which are backed up . This may be cause for some confusion. Consider the following example. You perform a backup with the Home Path set to "DH0:" (your first hard disk partition). A portion of the files selected might look like ARexx ARexx/Docs ARexx/Examples ARexx/Tools Docs Docs/Amiga Docs/Graphics Docs/Utilities ... etc. If you later restore the save-set with the Home Path again set to "DH0:", your files will be restored to the same level in the hierarchy. When you do a backup and specify a subdirectory as the Home Path, the full directory hierarchy from the "top" of the partition through all levels included by the Home Path is preserved. For levels higher than the Home Path, only the directories are preserved (files are ignored). When you restore such a backup, the Home Path must be changed to the name of the partition (e.g. DH0:, DH1:, etc.) to which you want the files recovered. Of course, if you wish to restore your/save-set to a lower-level hierarchy, you are free to select any valid Home Path. It is important to note that MRBackup will not overwrite an existing file with a file which has the same or earlier modification date unless you enable the Force Copy option. During the restore, a message will be displayed to the screen and written to the log file for each file that is skipped because of this condition. MRBackup SCSI Tape Support If you are regularly backing up more than 20MB of data, you really should consider the purchase of a streaming SCSI tape drive. Chances are, you already have the requisite SCSI interface controller (to interface and control your hard disk drive) so you will only need to aquire a tape drive. SCSI tape drives are becoming more and more affordable, with several good quality units available in the under $300 price range. Tape cartridges cost about $20 each. The time and aggravation you'll save are inestimable in their value. Also, since you'll be much more likely to perform regular backups with such a painless medium, your system will be much more secure. Do yourself a favor! A SCSI tape handler is provided with MRBackup and is installed as a part of the standard MRBackup installation procedure. To use it, you must perform the following steps: · If it isn't already present, copy the MRBackup tape handler, MRTape-Handler to the L: directory: COPY MRBackup:L/mrtape-handler to L: · Add the supplied device mountlist entry to your DEVS:Mountlist file, using a text editor or, if you are running WorkBench 2.04 or above, just copy the mountlist entry file to the DEVS: directory. The mountlist entry provided with MRBackup is named "mountlist.mrtape". It contains the following: MRTAPE: Handler = l:mrtape-handler StartUp = "128/scsi.device/4/0/3" Stacksize = 4000 Priority = 5 GlobVec = -1 # You may need to change the "Startup" line. The expression to the right of the equal sign (=) has the following format: "////" The beginning and ending double quotes are required if you are using the standard AmigaDOS Mount command. The parameter is specified in multiples of K (K=1024). The example value of 128, above, provides double-buffering for the WangTek model 5XXX-ES tape drives, which have an internal 64K buffer. The parameter specifies the device driver to be used to talk to the device. Use "scsi.device" with the CBM A2091 SCSI controller. Consult your owner's manual if you are using a non-Commodore SCSI controller. Also, note that this field is case-sensitive. If your device driver's name has upper case or mixed-case letters in its name, be sure you specify this field exactly as the driver is named. The parameter specifies the SCSI device number, usually established by jumpers or DIP switches or jumpers on your tape drive. The (logical unit number) field is not currently supported and must be zero. The parameter is a specially encoded value which selects certain features of the tape drive. Each bit position in the parameter has a unique value (1, 2, 4, etc.). Various feature selections can be made by adding these values together. The current feature values are: 1 - asynchronous mode 2 - use on-board hardware buffering Thus, to select both asynchronous mode and on-board buffering, you would add these values together for a value of 3. Once the above steps have been performed, you must mount the MRTAPE: device. This is done with the following command: MOUNT MRTAPE: or MOUNT MRTAPE: FROM DEVS:mountlist.mrtape (AmigaDOS 2.04) You may then specify MRTAPE: as your Backup Path. You may also automate the device mounting process by placing the above command in your S:Startup-Sequence (or S:StartupII) file. Special Features of MRTape-Handler The tape handler provided with MRBackup, MRTape-Handler, is designed to work with a wide array of tape devices from many different vendors. Though you many not redistribute this handler, you are welcome to use it with other Amiga applications. When used with MRBackup, MRTape-Handler can communicate certain information to MRBackup which will allow dynamic tuning of the buffers used to transfer data between the two processes. Asynchronous vs. Synchronous Mode MRTape-Handler supports both synchronous and asynchronous tape access. In synchronous mode, the program requesting a tape operation must wait until that operation completes before it can continue. In asynchronous mode, MRTape-Handler will attempt to complete the operation "on its own time", in parallel with the requesting program's activity. Thus, asynchronous mode generally yields better performance. However, we do not live in a perfect world. Certain combinations of tape drive and SCSI controller can lock up (hang) the Amiga when run in asynchronous mode. We have yet to see a definitive solution to the problem though many hardware "hacks" have been offered. Synchronous mode seems to fare better in these situations. Multiple Savesets on One Tape MRTape-Handler has the ability to "stack" multiple savesets on a single tape cartridge. This is achieved by a slight modification to the device naming conventions used by the MRTape-Handler. Normally, when you specify the tape device name as "MRTape:", the tape is rewound prior to the start of the backup and any information previously written to the tape is overwritten. To append a new saveset to the end of a tape cartridge which already contains one or more savesets, simply append an "A" to the tape device name (e.g. "MRTape:A"). Prior to writing the new saveset, the tape is positioned past the end of the last saveset on the tape. To restore from a saveset which is not the first saveset on the tape, you must append the saveset number to the tape device name. Saveset numbers begin with zero. Therefore, to retrieve the third saveset, you must append a "2" to the tape device name. Example: "MRTape:2". The only "trick" to all of this is to remember the order of your savesets. MRBackup currently doesn't provide any means to record this information. Thus, you should keep this information in a notebook or in a text file on your system. Should you forget, however, this information is very easily retrieved with MRBackup's Scan Tape command. Improvements on this capability are planned for a future release of MRBackup Professional. You should also be aware that this capability only exists for "sequential access" tape drives such as the Tandberg, WangTek, Sony, etc. This is because MRBackup depends upon tape marks to separate its savesets. Drives which employ "direct access", such as the 3M drive, will not support this feature. Using MRBackup with Other Handlers The decision to use a tape handler, rather than embedding tape-specific code in MRBackup was an important one. Though there may be a minor penalty in performance, the net result is that MRBackup is adaptable to other third-party handlers (public domain, shareware or commercial) which may be developed for specific devices suitable for backups. If the tape handler supplied with MRBackup Professional doesn't appear to be performing optimally with your particular device, don't hesitate to try another handler which you suspect might work better. Of course, we would be very grateful for any information you pass back to us with regard to any problems you might encounter. We are constantly striving to improve the quality of MRBackup Professional. MRTape: SCSI Tape Handler V1.07 This is a tape handler designed primarily for MRBackup Professional. Portions of this handler were originally derived from code written by Markus Wandel and Bob Rethemeyer. I am very grateful to them for their contributions to my understanding of SCSI tape operations. The current version of mrtape-handler represents a complete rewrite of the earlier code and sports many new features, several of which were designed specifically to support MRBackup Professional. It is known to support the following SCSI tape drives: Wangtek 5XXX ES This drive has an on-board 64K byte cache. Specify "64" as the buffer size if you can afford it (this results in 128k bytes being set aside by the handler, so plan accordingly). I believe you'll get optimal results with MRBackup if you also set "his" buffer size to 64K. This results in an optimal double-buffering arrangement. Data Cartridge Technology MCD-40 (and -20) This drive uses a fixed-size block of 8192 bytes. Specify "8" as the buffer size in your mountlist entry. This drive does not seem to provide any reasonable asynchronous behavior. I was quite disappointed with its performance compared to the Wangtek or the Sony. Archive ???? Sony SDT-1000 (added 03/30/91) On the SONY DAT drive, it is currently assumed that the drive defaults to "variable block size" mode. Since this is the vendor-preferred mode, MRBackup uses it. The drive is a real performer, though settling time after a rewind is a bit unsettling. :-) Tandberg 3600 series This is quite similar to the WangTek drive. It has an on-board 64K byte cache, though only 60K is really available for buffering. This one may have a few glitches when run in asynchronous mode. The use of the word "handler" is significant. This is not a "device driver". It responds to AmigaDOS I/O packets. Implementing tape support in this way (as opposed to embedding SCSI direct calls within the MRBackup Professional program) provides a large degree of device independence for MRBackup Professional. MRBackup Pro simply writes a stream of data (encoded in MRBackup's "FastDisk" format) to the Backup Path. This may just as easily be the SER: device, a file (local or networked) or some other device configured to respond to standard filesystem calls. Here are the packets supported and the degree to which they are supported: ACTION_FINDINPUT Opens the drive for exclusive read access only. ACTION_FINDOUTPUT Opens the drive for exclusive write access only. ACTION_INFO (26) ACTION_DISK_INFO These fill in an InfoData structure with as much useful information as possible. Specifically, an attempt is made to fill in the following fields: id_DiskState If a tape is inserted, this field is set to ID_UNREADABLE_DISK. If no tape is inserted, this field is set to ID_NO_DISK_PRESENT. id_NumBlocks An approximation of the tape cartridge capacity is provided. id_BytesPerBlock If a 3M drive (MCD-40) is detected, 8192 is assumed. Otherwise, 512 is assumed. id_DiskType This field is set to 'TAPE'. The first 4 characters of the manufacturer's code might be used in a later revision. id_InUse This field is set to the boolean equivalent of "tape cartridge inserted". ACTION_LOCATE_OBJECT (Lock) A rather hokey lock is created and returned. It should be sufficient for programs which require such things. ACTION_EXAMINE_OBJECT (Examine) This packet is recognized, but ERROR_OBJECT_WRONG_TYPE is currently returned. ACTION_READ Just what you'd expect. ACTION_WRITE Just what you'd expect. ACTION_END (Close) If the write buffer has any residue, it is padded to the device block size with zeros and written to the drive. If the drive is not the 3M variety, a filemark is then written. The device is then marked as closed. ACTION_DIE All resources allocated to the handler are released and the handler is unloaded from memory. If you replace the current handler code with a new version and then re-access the drive, the new code will be loaded and initialized (great for development - no need to reboot). (There are others, to be documented later.) MRBackup currently treats the backup set as one contiguous file. Individual files have special header blocks and the data blocks have control information which defines the end of each file. There is a special control block to mark the end of tape. Thus, the filemark isn't typically ever "read" and isn't required, which is how the 3M drive (block-structured) is able to work. MRTape-Handler uses asynchronous I/O, but you might not believe it when you use the 3M tape drive. I'm not sure what the problem is, but I wasn't able to get good performance from the 3 1/2" ministreamer that I tested with. The buffer size parameter in the Startup field of the mountlist entry must be chosen with care. This is the size of 1 buffer (as opposed to 1 block, as is typically specified for filesystems). The handler allocates one buffer for synchronous I/O and two buffers when using asynchronous I/O. For example, I reccommend 8 (8192 bytes) for the 3M drive (this is required by the drive) and 64 (65536 bytes) for the Wangtek 5150 ES. The Wangtek has a 64K cache buffer. Setting MRTapeHandler to use 64K buffers causes 128K bytes to be allocated (a significant chunk!) but performance is quite good. To obtain the best performance for other drives, you may need to experiment. Use MRBackup Professional's "Throughput" measurement as a relative guide to the effects that changes in buffer sizes have on your backups. Here is a sample mountlist entry for MRTape-Handler: This is a mountlist entry for the SCSI tape handler provided with MRBackup. Pay particular attention to the StartUp message. Its format is: "////" where is the total amount of buffer memory, specified in K (K = 1024); is the SCSI device driver name; is the SCSI unit number; is the SCSI logical unit number (not currently used but must be set to zero); is a set of bits controlling certain tape drive options The bit values, which may be added together are: 1 asynchronous mode, 0 = synchronous mode 2 use on-board buffer, 0 = don't use on-board buffer Example: to enable async mode and the on-board buffer, the value would be 3 (1 + 2). Other flag bits will be provided as new features are added. MRTAPE: Handler = l:mrtape-handler StartUp = "64/scsi.device/4/0/3" Stacksize = 4000 Priority = 10 GlobVec = -1 # To determine the version number of MRTapeHandler, view the handler with any binary file editor and look for a string that begins with the letters "$VER:". You may also use the "version" command under WorkBench 2.0. A small program, named "die", has been supplied with the handler. It allows you to force the handler to free up all resources and unload itself. Example: die mrtape: For a long time, MRBackup has relied on arp.library for many of its services. The Amiga Resource Project (ARP) was created by Microsmiths, Inc. of Cambridge, MA. Currently MRBackup only depends upon this library for file requester (under AmigaDOS 1.3) and date management services and is being phased out of MRBackup Professional. MRTape-Handler got its early inspiration from a public domain tape handler written by Marcus Wandel. Though MRTape-Handler bears very little resemblence to that code, I am nonetheless grateful to Marcus for sharing his code which served as an excellent example of SCSI-Direct programming.